package com.zjb.demo.system.service;

import com.mybatisflex.core.query.QueryWrapper;
import com.mybatisflex.solon.service.impl.ServiceImpl;
import com.zjb.demo.system.domain.CommonBizFile;
import com.zjb.demo.system.mapper.CommonBizFileMapper;
import org.noear.solon.annotation.Component;

import java.util.List;

import static com.zjb.demo.system.domain.table.CommonBizFileTableDef.COMMON_BIZ_FILE;

/**
 * @author 庄佳彬
 * @since 2023/12/27 13:19
 */
@Component
public class CommonBizFileService extends ServiceImpl<CommonBizFileMapper, CommonBizFile> {
    /**
     * 根据主键ID和业务类型选择返回公共业务文件列表
     *
     * @param mainId  主键ID
     * @param bizType 业务类型
     * @return 公共业务文件列表
     */
    public List<CommonBizFile> selectByMainIdAndBizType(Long mainId, String bizType) {
        return mapper.selectByMainIdAndBizType(mainId, bizType);
    }

    /**
     * 根据主键ID和业务类型删除记录
     *
     * @param mainId  主键ID
     * @param bizType 业务类型
     * @return 是否成功删除记录
     */
    public Boolean deleteByMainIdAndBizType(Long mainId, String bizType) {

        // 构建查询条件
        var queryWrapper = QueryWrapper.create()
                .where(COMMON_BIZ_FILE.MAIN_ID.eq(mainId))
                .and(COMMON_BIZ_FILE.BIZ_TYPE.eq(bizType));

        // 执行删除操作
        return remove(queryWrapper);
    }

}
